package com.ruoyi.depot.domain.vo;

import com.ruoyi.common.core.domain.BaseEntity;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * 入库需要的虚拟表
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
public class VoOrdersProduct extends BaseEntity implements Serializable {

    private static final long serialVersionUID = 1L;

    /** 需要入库的id */
    private String id;

    private String[] ids;

    /** 产品编号 */
    private String productProNo;

    /** 产品名称 */
    private String productName;

    /** 产品单价 */
    private BigDecimal productPrice;

    /** 产品颜色 */
    private String colorName;

    /** 品牌 */
    private String productBrand;

    /** 产品规格型号 */
    private String productModel;

    /** 产品sku */
    private String productSku;

    /** 采购数量 */
    private Long transferableNumber;

    /** 未入库数量 */
    private Long notStockedNumber;

    /** 入库数量 */
    private Long storageNumber;

    /** 采购单id */
    private String ordersId;

    /** 多个采购单id */
    private Long[] ordersIds;

    /** 产品id */
    private Long productId;
    /** 是否选择状态 */
    private String selectedStatus;
    /** 判断取消区分 */
    private boolean flay;

    /** 待到货量 */
    private Long waitingStock;

    /** 已通知量 */
    private Long notifiedCount;

    /** 未通知量 */
    private Long unnotifiedQuantity;

    /** 通知收货量 */
    private Long notificationQuantity;

    /** 产品图片 */
    private List<String> imgName;

    /** 产品SKU */
    private String sku;

    /** 产品gtin */
    private String gtin;

    /** 仓库 */
    private String warehouseName;

    /** 是否选中产品明细状态 */
    private String detailsStatus;

    /** 用于存放已选中的收货明细 */
    private Long[] receiptProductIds;

    /** 用于存放已选中的收货明细 */
    private String isChecked;

    /** 用于存放已选中的收货表ID */
    private String receiptId;

    private String receiptProductId;

    private Long[] ordersProductIds;

    public String getDetailsStatus() {
        return detailsStatus;
    }

    public void setDetailsStatus(String detailsStatus) {
        this.detailsStatus = detailsStatus;
    }

    public String getWarehouseName() {
        return warehouseName;
    }

    public void setWarehouseName(String warehouseName) {
        this.warehouseName = warehouseName;
    }

    public String getSku() {
        return sku;
    }

    public void setSku(String sku) {
        this.sku = sku;
    }

    public List<String> getImgName() {
        return imgName;
    }

    public void setImgName(List<String> imgName) {
        this.imgName = imgName;
    }

    public String getReceiptId() {
        return receiptId;
    }

    public void setReceiptId(String receiptId) {
        this.receiptId = receiptId;
    }

    public String getReceiptProductId() {
        return receiptProductId;
    }

    public void setReceiptProductId(String receiptProductId) {
        this.receiptProductId = receiptProductId;
    }

    public boolean isFlay() {
        return flay;
    }

    public Long getWaitingStock() {
        return waitingStock;
    }

    public void setWaitingStock(Long waitingStock) {
        this.waitingStock = waitingStock;
    }

    public Long getNotifiedCount() {
        return notifiedCount;
    }

    public void setNotifiedCount(Long notifiedCount) {
        this.notifiedCount = notifiedCount;
    }

    public Long getUnnotifiedQuantity() {
        return unnotifiedQuantity;
    }

    public void setUnnotifiedQuantity(Long unnotifiedQuantity) {
        this.unnotifiedQuantity = unnotifiedQuantity;
    }

    public Long getNotificationQuantity() {
        return notificationQuantity;
    }

    public void setNotificationQuantity(Long notificationQuantity) {
        this.notificationQuantity = notificationQuantity;
    }

    private List<VoOrdersProduct> voOrdersProductList;

    public List<VoOrdersProduct> getVoOrdersProductList() {
        return voOrdersProductList;
    }

    public void setVoOrdersProductList(List<VoOrdersProduct> voOrdersProductList) {
        this.voOrdersProductList = voOrdersProductList;
    }

    public boolean getFlay() {
        return flay;
    }

    public void setFlay(boolean flay) {
        this.flay = flay;
    }

    public String getSelectedStatus() {
        return selectedStatus;
    }

    public void setSelectedStatus(String selectedStatus) {
        this.selectedStatus = selectedStatus;
    }

    public String[] getIds() {
        return ids;
    }

    public void setIds(String[] ids) {
        this.ids = ids;
    }

    public Long getProductId() {
        return productId;
    }

    public void setProductId(Long productId) {
        this.productId = productId;
    }

    public Long[] getOrdersIds() {
        return ordersIds;
    }

    public void setOrdersIds(Long[] ordersIds) {
        this.ordersIds = ordersIds;
    }

    public String getId() {
        return id;
    }

    public void setId(String id) {
        this.id = id;
    }

    public String getProductProNo() {
        return productProNo;
    }

    public void setProductProNo(String productProNo) {
        this.productProNo = productProNo;
    }

    public String getProductName() {
        return productName;
    }

    public void setProductName(String productName) {
        this.productName = productName;
    }

    public BigDecimal getProductPrice() {
        return productPrice;
    }

    public void setProductPrice(BigDecimal productPrice) {
        this.productPrice = productPrice;
    }

    public String getColorName() {
        return colorName;
    }

    public void setColorName(String colorName) {
        this.colorName = colorName;
    }

    public String getProductBrand() {
        return productBrand;
    }

    public void setProductBrand(String productBrand) {
        this.productBrand = productBrand;
    }

    public String getProductModel() {
        return productModel;
    }

    public void setProductModel(String productModel) {
        this.productModel = productModel;
    }

    public String getProductSku() {
        return productSku;
    }

    public void setProductSku(String productSku) {
        this.productSku = productSku;
    }

    public Long getTransferableNumber() {
        return transferableNumber;
    }

    public void setTransferableNumber(Long transferableNumber) {
        this.transferableNumber = transferableNumber;
    }

    public Long getNotStockedNumber() {
        return notStockedNumber;
    }

    public void setNotStockedNumber(Long notStockedNumber) {
        this.notStockedNumber = notStockedNumber;
    }

    public Long getStorageNumber() {
        return storageNumber;
    }

    public void setStorageNumber(Long storageNumber) {
        this.storageNumber = storageNumber;
    }

    public String getOrdersId() {
        return ordersId;
    }

    public void setOrdersId(String ordersId) {
        this.ordersId = ordersId;
    }

    public Long[] getReceiptProductIds() {
        return receiptProductIds;
    }

    public void setReceiptProductIds(Long[] receiptProductIds) {
        this.receiptProductIds = receiptProductIds;
    }

    public String getIsChecked() {
        return isChecked;
    }

    public void setIsChecked(String isChecked) {
        this.isChecked = isChecked;
    }

    public Long[] getOrdersProductIds() {
        return ordersProductIds;
    }

    public void setOrdersProductIds(Long[] ordersProductIds) {
        this.ordersProductIds = ordersProductIds;
    }
}
